package com.javarush.test.level19.lesson10.home03;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/* Хуан Хуанович
В метод main первым параметром приходит имя файла.
В этом файле каждая строка имеет следующий вид:
имя день месяц год
где [имя] - может состоять из нескольких слов, разделенных пробелами, и имеет тип String
[день] - int, [месяц] - int, [год] - int
данные разделены пробелами

Заполнить список PEOPLE импользуя данные из файла
Закрыть потоки

Пример входного файла:
Иванов Иван Иванович 31 12 1987
Вася 15 5 2013
*/

public class Solution {
    public static final List<Person> PEOPLE = new ArrayList<Person>();

    public static void main(String[] args) {
        try {
            BufferedReader reader = new BufferedReader(new FileReader(args[0]));
            String s = "";
            while (!((s = reader.readLine()) == null)) {
                String[] str = s.split(" ");
                String dateStr = "";
                String name = "";
                for (String a : str) {
                    try {
                        int x = Integer.parseInt(a);
                        dateStr = dateStr + a + " ";
                    } catch (NumberFormatException e) {
                        name = name + a + " ";
                    }
                }

                name = name.substring(0, name.length() - 1);
                dateStr = dateStr.substring(0, dateStr.length() - 1);
                String[] date = dateStr.split(" ");

                int year = Integer.parseInt(date[2]) - 1900;
                int month = Integer.parseInt(date[1]) - 1;
                int day = Integer.parseInt(date[0]);
                Date birthday = new Date(year, month, day);
                PEOPLE.add(new Person(name, birthday));
            }
            reader.close();

        }catch (Exception e){}

    }

}
